package com.ruoyi.pingan.fymodule.order.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import java.io.Serializable;

/**
 * <p>
 * 平安分账订单分账
 * </p>
 *
 * @author wangy
 * @since 2025-06-19
 */
@Data
@TableName("sxo_safety_sep_acc")
@Schema(name = "SxoSafetySepAcc对象", description = "平安分账订单分账")
public class SxoSafetySepAcc implements Serializable {

    private static final long serialVersionUID = 1L;

    @Schema(description = "自增id")
    @TableId(value = "id", type = IdType.AUTO)
    private String id;

    @Schema(description = "冻结充值订单ID")
    @TableField("safety_order_id")
    private String safetyOrderId;

    @Schema(description = "用户ID")
    @TableField("user_id")
    private String userId;

    @Schema(description = "订单id")
    @TableField("order_id")
    private String orderId;

    @Schema(description = "订单号")
    @TableField("order_no")
    private String orderNo;

    @Schema(description = "店铺id")
    @TableField("shop_id")
    private String shopId;

    @Schema(description = "店铺名称")
    @TableField("shop_name")
    private String shopName;

    @Schema(description = "原支付子订单号")
    @TableField("old_pay_sub_order_no")
    private String oldPaySubOrderNo;

    @Schema(description = "原支付订单所属日期")
    @TableField("old_pay_order_date")
    private String oldPayOrderDate;

    @Schema(description = "订单月份")
    @TableField("order_month")
    private String orderMonth;

    @Schema(description = "分账转出子账户")
    @TableField("out_sub_acct_no")
    private String outSubAcctNo;

    @Schema(description = "平台补贴金额")
    @TableField("plat_total_amt")
    private String platTotalAmt;

    @Schema(description = "总交易金额")
    @TableField("tran_total_amt")
    private String tranTotalAmt;

    @Schema(description = "订单额外金额（如邮费）")
    @TableField("increase_price")
    private String increasePrice;

    @Schema(description = "订单数量")
    @TableField("orders_count")
    private String ordersCount;

    @Schema(description = "分账状态（-1:分账失败；0：未分账;1：分账成功;2:分账撤销;3分账中）")
    @TableField("sep_status")
    private Integer sepStatus;

    @Schema(description = "分账时间")
    @TableField("sep_time")
    private String sepTime;

    @Schema(description = "分账查询成功时间")
    @TableField("sep_succ_time")
    private String sepSuccTime;

    @Schema(description = "交易流水号")
    @TableField("cnsmr_seq_no")
    private String cnsmrSeqNo;

    @Schema(description = "电商见证宝系统生成的流水号")
    @TableField("jzb_accept_seq_no")
    private String jzbAcceptSeqNo;

    @Schema(description = "是否需要撤退（0分账中需要撤退，等查询分账成功后，先进行分账成功撤销，状态0变1；" +
            "1分账成功需要撤销，等查询分账撤销状态查询成功后，在撤销补贴，在撤销冻结充值）")
    @TableField("need_revoke")
    private Integer needRevoke;

    @Schema(description = "撤销分账时间")
    @TableField("sep_revoke_time")
    private String sepRevokeTime;

    @Schema(description = "结算状态：0未结算；1已结算；2未提现；3已提现")
    @TableField("settle_status")
    private Integer settleStatus;

    @Schema(description = "结算时间")
    @TableField("settle_time")
    private String settleTime;


    @Schema(description = "提现时间")
    @TableField("withdraw_time")
    private String withdrawTime;

    @Schema(description = "提现单号")
    @TableField("withdraw_order_no")
    private String withdrawOrderNo;

    @Schema(description = "订单售后主键ID")
    @TableField("sale_id")
    private String saleId;

    @Schema(description = "错误信息")
    @TableField("error_msg")
    private String errorMsg;

    @Schema(description = "状态（0正常, 1删除）")
    @TableField("status")
    private Integer status;

    @Schema(description = "添加时间")
    @TableField("add_time")
    private String addTime;

    @Schema(description = "更新时间")
    @TableField("upd_time")
    private String updTime;
}
